package com.dog.basics.bean.model.mtkj;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author wph
 * @since 2020-11-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("mt_order")
public class MtOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 订单id
     */
    private Long id;

    /**
     * 订单编号
     */
    @TableField("order_no")
    private String orderNo;

    /**
     * 外部交易号
     */
    @TableField("out_trade_no")
    private String outTradeNo;

    /**
     * 订单类型: 0公众号订单1小程序: 2:APP
     */
    @TableField("order_type")
    private Integer orderType;

    /**
     * 订单类型: 0送货上门 1:自提
     */
    @TableField("order_from")
    private Integer orderFrom;
    /**
     * 支付类型: 0微信 1:支付宝 2:余额
     */
    @TableField("payment_type")
    private Integer paymentType;
    /**
     * 店铺ID
     */
    @TableField("shop_id")
    private Long shopId;
    /**
     * 买家id
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 订单备注
     */
    @TableField("buyer_message")
    private String buyerMessage;

    /**
     * 配送订单地址ID
     */
    @TableField("addr_order_id")
    private Long addrOrderId;

    /**
     * 订单总价
     */
    @TableField("order_money")
    private BigDecimal orderMoney;

    /**
     * 订单优惠券支付金额
     */
    @TableField("coupon_money")
    private BigDecimal couponMoney;

    /**
     * 订单优惠券id
     */
    @TableField("coupon_id")
    private Long couponId;

    /**
     * 订单运费
     */
    @TableField("shipping_money")
    private BigDecimal shippingMoney;

    /**
     * 订单实付金额
     */
    @TableField("pay_money")
    private BigDecimal payMoney;

    /**
     * 订单总数量
     */
    private Integer num;

    /**
     * 支付状态: 0-未支付  1-已支付
     */
    @TableField("order_status")
    private Integer orderStatus;

    /**
     * 订单状态: 0-待支付  1-已支付  2-申请退款中 3-退款拒绝 4-退款完成 5-已关闭 6:待发货  7待收货 8完成
     */
    @TableField("refund_status")
    private Integer refundStatus;

    /**
     * 订单配送状态0:待发货 1:发货中(暂时不用) 2:待收货 3:完成
     */
    @TableField("shipping_status")
    private Integer shippingStatus;

    /**
     * 是否评价 0为未评价 1为已评价 2为已追评
     */
    @TableField("is_evaluate")
    private Integer isEvaluate;

    /**
     * 订单付款时间
     */
    @TableField("pay_time")
    private Long payTime;

    /**
     * 订单完成时间
     */
    @TableField("finish_time")
    private Long finishTime;

    /**
     * 退款原因
     */
    @TableField("refund_reason")
    private String refundReason;

    /**
     * 退款凭证
     */
    @TableField("refund_imgs")
    private String refundImgs;

    /**
     * 退款说明
     */
    @TableField("refund_remarks")
    private String refundRemarks;

    /**
     * 创建者
     */
    @TableField("create_by")
    private Long createBy;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private Long createTime;

    /**
     * 更新人
     */
    @TableField("update_by")
    private Long updateBy;

    /**
     * 更新时间
     */
    @TableField("update_time")
    private Long updateTime;


}
